<template>
    <div class="box">
        <h1 style="text-align: center; background: #000; color: #fff;">短信验证码登录</h1>
        <van-form @submit="onSubmit">
            <van-cell-group inset>
                <van-field v-model="username" name="username" label="用户名" placeholder="用户名"
                    :rules="[{ required: true, message: '请填写用户名' }]" />

                

                <van-field v-model="password" :type="checked ? 'text' : 'password'" name="password" label="密码"
                    placeholder="密码" :rules="[{ required: true, message: '请填写密码' }]">
                    <template #button>
                        <van-switch v-model="checked" />
                    </template>
                </van-field>

                <van-field v-model="sms" center clearable label="短信验证码" placeholder="请输入短信验证码">
                    <template #button>
                        <van-button size="small" type="primary" @click="sendFun()" v-if="time==0">发送验证码</van-button>
                        <van-button size="small" disabled type="primary" v-else>倒计时{{time}}s</van-button>
                    </template>
                </van-field>

            </van-cell-group>
            <div style="margin: 16px;">
                <van-button round block type="primary" native-type="submit" style="border-radius: 3%;">
                    提交
                </van-button>
            </div>
        </van-form>
    </div>
</template>

<script setup>
import { ref } from 'vue';
import { loginApi } from '@/api/api';
import { showToast } from 'vant';
const checked = ref(true);
import { useRoute, useRouter } from 'vue-router'
const router = useRouter()
const route = useRoute()
const username = ref('');
const password = ref('');
const onSubmit = (values) => {
    loginApi(username.value, password.value).then(res => {
        if (res.data.code == 0) {
            showToast('登陆成功');
            localStorage.setItem('token', res.data.data.token)
            router.push('home/my')
        }
        else {
            showToast(res.data.meg);
        }
    })
    console.log('submit', values);
};


let sms=ref("")
let time=ref(0)
const sendFun=()=>{
    time.value=10
    sms.value=Math.random.toString(36).slice(2,8)
    let times=setInterval(()=>{
        time.value--
        if(time.value==0){
            clearInterval(times)
        }
    },1000)
}
</script>

<style lang="scss" scoped>
.box{
    background: #eee;
    h1{
        margin-bottom: 10px;
    }
}
</style>